/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package be.hogent.iii.project.client.berichthandlers;

import be.hogent.iii.project.client.gui.gameroom.GameRoomGuiFrame;
import be.hogent.iii.project.client.netwerk.Connectie;
import be.hogent.iii.project.common.bericht.Bericht;
import be.hogent.iii.project.common.bericht.GameStartBericht;
import be.hogent.iii.project.gui.SpelAanHetLaden;
import be.hogent.iii.project.gui.SpelFrame;

/**
 *
 * @author jef donders
 */
public class ClientGameStartBerichtHandler implements BerichtHandler {

    public ClientGameStartBerichtHandler() {

    }

    public void handle(Bericht bericht) {
        GameStartBericht gameStartBericht = GameStartBericht.class.cast(bericht);
        System.out.println("Het spel wordt gestart");
        
        //alle nodige info nog halen uit de gameroom, nu die nog bestaat
        Connectie conn = GameRoomGuiFrame.getGameRoomGuiFrame().getGameRoomGui().getconnectie();
        SpelFrame spelFrame = SpelFrame.getSpelFrame();
        spelFrame.setSpeler(GameRoomGuiFrame.getGameRoomGuiFrame().getGameRoomGui().getSpeler());
        
        //zo snel mogelijk de gameroom wegdoen
        GameRoomGuiFrame.getGameRoomGuiFrame().setVisible(false);
        
        //laten weten dat we aan het opstarten zijn
        SpelAanHetLaden loading = new SpelAanHetLaden();
        
        //de rest van het spel opstarten
        spelFrame.setConnectie(conn);
        spelFrame.setSpel(gameStartBericht.getSpel());
        spelFrame.startSpel();
        
        //spel compleet, we doen ons loadingscreen weg en laten het spel zien
        loading.dispose();
        spelFrame.setVisible(true);
        //HIER MOET DE FULL SCREEN NOG GEBEUREN!
        
    }
}
